-
Notifications
You must be signed in to change notification settings - Fork 19
start of QuantumToolboxExt #121
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #121 +/- ##
==========================================
- Coverage 76.48% 76.07% -0.42%
==========================================
Files 20 21 +1
Lines 842 886 +44
==========================================
+ Hits 644 674 +30
- Misses 198 212 +14 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Could you just print the error here? It makes review and answering questions faster.
Notice that the for loops are iterating through
Yeah, if you do want a new QuantumSymbolics.jl/src/QSymbolicsBase/predefined.jl Lines 119 to 132 in a4980ef
When defining the conversion in QuantumOptics, we are looping through each permutation of the two qubit gates and lining them up with the spin operators defined in QuantumOptics. |
Hi, I'm one of the developers in For your information, we have just merged a pull request (qutip/QuantumToolbox.jl#486) to implement This will be available in our next release |
@jeffwack what's the status on this PR? I can help you finish it if you want. |
@apkille That sounds great to me! Apologies, I let this fall off my todo list. If you want to take this over that is fine by me :) |
@Krastanov should be good to go for review! |
looks good to merge once we figure out what the test failures are we also might want to start having separate test runners for each extension, but this is beyond the scope of this PR |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just marking it as an actual review:
- downgrade test
- changelog
- some other failing tests that might just be flaky (but checking that any JET tests failurs are unrelated)
Feel free to merge without checking with me once these are resolved, or tag me if they are weird to deal with / unrelated.
@Krastanov the downgrade test is weird to me/I'm not sure how to deal with it, it looks like a project.toml issue with QuantumToolbox and SciMLOperators:
the other two CI tests look to be unrelated caching issues for |
this seems related qutip/QuantumToolbox.jl#470 |
@Krastanov Shall we merge this and create issues for the failing tests and deal with them in future PRs? I can do that this week during JuliaCon. |
I think this will be causing actual issues to some folks. I would not be surprised if this issue pops up in a lot of environments that use QuantumSavory.jl. I would prefer to wait at least for a comment from the QuantumToolbox folks, because this might be unfixable without their commitment, and I would prefer not to have a future PR removing this extension. |
Ok, sounds good |
This is incomplete, but I have made some progress on #116 and have some questions. My strategy was to copy the file QuantumOpticsExt and go line by line to convert to QuantumToolbox. I ran into name collisions (basis and \otimes) come to mind, so I decided to be conservative and use the QuantumToolbox.function() form for all function calls.
I ran into a roadblock converting this:
Specifically, you cannot copy() a QuantumToolbox operator. This example shows the error:
So, to avoid type piracy we cannot implement the conversion as written without contributing a method for copy() to QuantumToolbox?
Another route would be to rework that chunk to avoid the copy, but I am not so clear on how it does what it does. Why the macro?